"""
功能描述 ：
编写人 ：
编写日期 ：
实现逻辑 ：
    1- ......
        1.1- ......
    2- ......
        2.1- ......
"""

# 导包
# 创建一个类
# 1 创建init初始化方法
#     1.1 获取文件地址
#     1.2 实例化configparser
#     1.3 读取指定地址下的配置文件
# 2 创建对外方法:get_section
#     2.1 返回指定section下所有option的值
# 3.创建对外方法:get_option
#     3.2 返回指定section下面指定option的值
#导包
from configparser import ConfigParser
import os

#创建一个类
class ReadConfig():
    def __init__(self):
        # 1.1 获取文件地址
        self.path = os.path.dirname(os.path.dirname(__file__))+r"/config.ini"
        # 1.2 实例化configpraser
        self.conf = ConfigParser()
        # 1.3 读取指定地址下的配置文件
        self.conf.read(self.path,encoding='utf-8')

    # #对外创建方法
    # def get_section(self,section):
    #     # 2.1 返回指定section下所有option的键
    #     return self.conf.options(section)
    #     # 2.2 返回指定section下所有option的键值对
    #     return self.conf.items(section)
    # # 3.创建对外方法:get_option
    # def get_option(self,section,option):
    #     # 3.2 返回指定section下面指定option的值
    #     return self.conf.get(section,option)

    #优化
    def get_config(self,section,option="all"):
        if option == "all":
            return self.conf.items(section)
        else:
            return self.get(section,option)
if __name__ == '__main__':
    rc = ReadConfig()
    # 调用实例方法
    # res = rc.get_section("mysql")
    # print(res)
    # res2 = rc.get_option("mysql", "port")
    # print(res2)
    res3 = rc.get_config("mysql", "user")
    print(res3)